Get the GPX file we need, and convert it to a gpxFile object using the parser.

Plot elevation vs lat,lon

Proof that much of the elevation was negative. (Inaccurate data)

Plotting again, only taking into account positive elevation.

References:

GPX Schema documentation: http://www.topografix.com/GPX/1/1/#type_trksegType

GPX files with tag are corrupt:

https://github.com/NetTopologySuite/NetTopologySuite.IO.GPX/issues/34 This means that the GPX file I downloaded from the app actually does not conform fully to the schema.

Distance between 2 lat/lon coordinates: https://www.movable-type.co.uk/scripts/latlong.html

Vectorized haversine function: https://stackoverflow.com/questions/40452759/pandas-latitude-longitude-to-distance-between-successive-rows